DOM变化
<input type="file">
HTML5支持文件对话框标签<input type="file" />
, 属性例如multiple
, accept
以及webkitdirectory
. NW.js应用更好的扩展文件输入框 .
考虑到安全性 , NW.js扩展的属性只能在Node框架中启用 . 参考[安全](../For Users/Advanced/Security in NW.js.md)查看Node和普通框架的区别 .
fileinput.value
该属性内容为本地文件原路径.
例如 , 通过Node.js的API获取选择的文件路径:
// 获取选择文件的原路径
var fileinput = document.querySelector('input[type=file]');
var path = fileinput.value;
// 使用Node.js的API读取文件
var fs = nw.require('fs');
fs.readFile(path, 'utf8', function(err, txt) {
if (err) {
console.error(err);
return;
}
console.log(txt);
});
fileitem.path
HTML5提供files
属性返回<input>
标签中选择的所有文件 . NW.js提供一个额外属性fileitem.path
获取files
中选择的每个文件原路径 .
var fileinput = document.querySelector('input[type=file]');
var files = fileinput.files;
for (var i = 0; i < files.length; ++i) {
console.log(files[i].path);
}
属性: nwdirectory
nwdirectory
属性类似于webkitdirectory
, 但返回值为路径 , 而不是文件对象 .
For example:
<input type="file" nwdirectory>
属性: nwsaveas
nwsaveas
属性打开一个'另存为'对话框 , 以便能够进入一个文件的路径 . 提供选择一个不存在的文件 , 该方式不同于默认的文件选择标签 .
For example:
<input type="file" nwsaveas>
该属性还支持指定默认的存储文件名称:
<input type="file" nwsaveas="filename.txt">
属性: nwworkingdir
nwworkingdir
属性 , 文件对话框激活之后从指定的路径开始 .
例如 , 打开文件对话框之后 , 显示的路径为/home/path/
:
<input type="file" nwworkingdir="/home/path/">
oncancel
事件
取消对话框触发该事件 .
<iframe>
NW.js扩展<iframe>
标签使应用开发更加简单 , 可以绕过沙箱限制以及同源策略等跨域问题 .
参考页面标签中的<webview>
标签 .
属性: nwdisable
使框架和自框架为正常框架 .
该属性不能阻止页面中正常框架访问父页面以及体层框架 . 但仍然能够访问Node.js的API . 该属性通常与`nwfaketop`属性一同使用 .
属性: nwfaketop
阻止框架中页面访问window.parent
或window.top
. 框架自己拥有window
对象 , 子框架也会受到影响 .
该属性通常与nwdisable
一同使用 .
属性: nwUserAgent
框架和自框架加载页面时重写user-agent
属性 . 参考user-agent
配置 .
页面标签
新增方法参考页面标签